#ifndef __VLOG_LOGLEVEL_H__
#define __VLOG_LOGLEVEL_H__

#include <stdint.h>
#include <string>
#include <string_view>

namespace vlog
{

class LogLevel
{

    public:
    enum class Level : uint8_t
    {
        UNKONW = 0,
        DEBUG = 1,
        INFO = 2,
        WARN = 3,
        ERROR = 4,
        FATAL = 5
    };

    static const char* ToString(const vlog::LogLevel::Level& leve) noexcept;
    static const vlog::LogLevel::Level FromString(const std::string& strLevel) noexcept;
    static std::string_view GetLevelColor(const vlog::LogLevel::Level& level = vlog::LogLevel::Level::UNKONW) noexcept;
};

} // namespace vlog

#endif